package Report.XML;

public class CriaQuery
{
   //Associado
   public String criaQueryAssociadoBanco(String codAssociado, String numAssociado){
       String query = "SELECT\n associado.\"cod_associado\", associado.\"num_associado\" AS associado_num_associado,\n associado.\"nome\" AS associado_nome,\n banco.\"nome\" AS banco_nome,\n associado.\"conta\" AS associado_conta,\n associado.\"agencia\" AS associado_agencia\n FROM\n banco AS banco, associado as associado";
       String condicao = "\nWHERE\n associado.cod_banco = banco.cod_banco AND associado.\"ativo\" = true";
       if (!codAssociado.equals("0"))
           condicao = condicao + "\n AND associado.\"cod_associado\" = " + codAssociado;
       if (!numAssociado.equals(""))
           condicao = condicao + "\n AND associado.\"num_associado\" = " + numAssociado;
       return query + condicao + "\nORDER BY \n associado.\"nome\"";
   }
   public String criaQueryAssociadoContato(String codAssociado, String numAssociado){
       String query = "SELECT\n associado.\"cod_associado\", associado.\"nome\" AS associado_nome,\n associado.\"num_associado\" AS associado_num_associado,\n associado.\"email\" AS associado_email,\n associado.\"telefone_residencial\" AS associado_telefone_residencial,\n associado.\"telefone_celular\" AS associado_telefone_celular,\n associado.\"telefone_comercial\" AS associado_telefone_comercial\n FROM\n \"public\".\"associado\" associado";
       String condicao = "\n WHERE associado.\"ativo\" = true";
       if (!codAssociado.equals("0"))
           condicao = condicao + "\n AND associado.\"cod_associado\" = " + codAssociado;
       if (!numAssociado.equals(""))
           condicao = condicao + "\n AND associado.\"num_associado\" = " + numAssociado;
       return query + condicao + "\nORDER BY \n associado.\"nome\"";
   }
   public String criaQueryAssociadoCompleto(String codAssociado, String numAssociado){
       String query = "SELECT\n associado.\"cod_associado\", associado.\"nome\" AS associado_nome,\n associado.\"num_associado\" AS associado_num_associado,\n associado.\"cod_endereco\" AS associado_cod_endereco,\n associado.\"sitio\" AS associado_sitio,\n associado.\"conta\" AS associado_conta,\n associado.\"tipo_conta\" AS associado_tipo_conta,\n associado.\"agencia\" AS associado_agencia,\n associado.\"cpf\" AS associado_cpf,\n associado.\"data_nasc\" AS associado_data_nasc,\n associado.\"email\" AS associado_email,\n associado.\"sexo\" AS associado_sexo,\n associado.\"telefone_residencial\" AS associado_telefone_residencial,\n associado.\"telefone_celular\" AS associado_telefone_celular,\n associado.\"telefone_comercial\" AS associado_telefone_comercial,\n cidade.\"nome\" AS cidade_nome,\n banco.\"nome\" AS banco_nome,\n estado.\"nome\" AS estado_nome,\n estado.\"uf\" AS estado_uf,\n endereco.\"logradouro\" AS endereco_logradouro,\n endereco.\"cep\" AS endereco_cep,\n endereco.\"bairro\" AS endereco_bairro,\n endereco.\"complemento\" AS endereco_complemento\n FROM\n \"public\".\"banco\" banco INNER JOIN \"public\".\"associado\" associado ON banco.\"cod_banco\" = associado.\"cod_banco\"\n INNER JOIN \"public\".\"endereco\" endereco ON associado.\"cod_endereco\" = endereco.\"cod_endereco\"\n INNER JOIN \"public\".\"cidade\" cidade ON endereco.\"cod_cidade\" = cidade.\"cod_cidade\"\n INNER JOIN \"public\".\"estado\" estado ON cidade.\"cod_estado\" = estado.\"cod_estado\"\n";
       String condicao = "\n WHERE associado.\"ativo\" = true";
       if (!codAssociado.equals("0"))
           condicao = condicao + "\n AND associado.\"cod_associado\" = " + codAssociado;
       if (!numAssociado.equals(""))
           condicao = condicao + "\n AND associado.\"num_associado\" = " + numAssociado;
       return query + condicao + "\nORDER BY \n associado.\"nome\"";
   }
   public String criaQueryAssociadoEndereco(String codAssociado, String numAssociado){
       String query = "SELECT\n associado.\"cod_associado\", associado.\"nome\" AS associado_nome,\n cidade.\"nome\" AS cidade_nome,\n estado.\"uf\" AS estado_uf,\n endereco.\"logradouro\" AS endereco_logradouro,endereco.\"bairro\" AS endereco_bairro,\n endereco.\"cep\" AS endereco_cep,\n endereco.\"complemento\" AS endereco_complemento\n FROM\n \"public\".\"endereco\" endereco INNER JOIN \"public\".\"associado\" associado ON endereco.\"cod_endereco\" = associado.\"cod_endereco\"\n INNER JOIN \"public\".\"cidade\" cidade ON endereco.\"cod_cidade\" = cidade.\"cod_cidade\"\n INNER JOIN \"public\".\"estado\" estado ON cidade.\"cod_estado\" = estado.\"cod_estado\"";
       String condicao = "\n WHERE associado.\"ativo\" = true";
       if (!codAssociado.equals("0"))
           condicao = condicao + "\n AND associado.\"cod_associado\" = " + codAssociado;
       if (!numAssociado.equals(""))
           condicao = condicao + "\n AND associado.\"num_associado\" = " + numAssociado;
       return query + condicao + "\nORDER BY \n associado.\"nome\"";
   }
   public String criaQueryAssociadoInformacoes(String codAssociado, String numAssociado){
       String query = "SELECT\n associado.\"cod_associado\", associado.\"nome\" AS associado_nome,\n associado.\"num_associado\" AS associado_num_associado,\n associado.\"cpf\" AS associado_cpf,\n associado.\"data_nasc\" AS associado_data\n FROM\n \"public\".\"associado\" associado";
       String condicao = "\n WHERE associado.ativo = true";
       if (!codAssociado.equals("0"))
           condicao = condicao + "\n AND associado.\"cod_associado\" = " + codAssociado;
       if (!numAssociado.equals(""))
           condicao = condicao + "\n AND associado.\"num_associado\" = " + numAssociado;
       return query + condicao + "\nORDER BY \n associado.\"nome\"";
   }
   //Caminhao
   public String criaQueryCaminhao(String codEmpresa, String placa){
       String query = "SELECT\n caminhao.\"marca\" AS caminhao_marca,\n caminhao.\"modelo\" AS caminhao_modelo,\n caminhao.\"ano\" AS caminhao_ano,\n caminhao.\"placa_caminhao\" AS caminhao_placa,\n caminhao.\"capacidade\" AS caminhao_capacidade,\n empresa.\"nome\" AS empresa_nome\n FROM\n \"public\".\"empresa\" empresa INNER JOIN \"public\".\"caminhao\" caminhao ON empresa.\"cod_empresa\" = caminhao.\"cod_empresa\"";
       String condicao = "\n WHERE caminhao.\"ativo\" = true";
       if (!codEmpresa.equals("0"))
           condicao = condicao + "\n AND empresa.\"cod_empresa\" = " + codEmpresa;
       if (!placa.equals(""))
           condicao = condicao + "\n AND caminhao.\"placa_caminhao\" = \'" + placa+ "\' ";
       return query + condicao + "\nORDER BY \n caminhao.\"marca\", caminhao.\"modelo\", caminhao.\"ano\", caminhao.\"placa_caminhao\"";
    }
   //Carreta
   public String criaQueryCarreta(String codEmpresa, String placa){
       String query = "SELECT\n empresa.\"nome\" AS empresa_nome,\n carreta.\"marca\" AS carreta_marca,\n carreta.\"modelo\" AS carreta_modelo,\n carreta.\"capacidade\" AS carreta_capacidade,\n carreta.\"placa_carreta\" AS carreta_placa,\n carreta.\"ano\" AS carreta_ano\n FROM\n \"public\".\"empresa\" empresa INNER JOIN \"public\".\"carreta\" carreta ON empresa.\"cod_empresa\" = carreta.\"cod_empresa\"";
       String condicao = "\n WHERE carreta.\"ativo\" = true";
       if (!codEmpresa.equals("0"))
           condicao = condicao + "\n AND empresa.\"cod_empresa\" = " + codEmpresa;
       if (!placa.equals("")){
           condicao = condicao + "\n AND carreta.\"placa_carreta\" = \'" + placa+ "\' ";
       }
       return query + condicao + "\nORDER BY \n carreta.\"marca\", carreta.\"modelo\", carreta.\"ano\"";
    } 
   //Empresa
   public String criaQueryEmpresaCompleto(String codEmpresa){
       String query = "SELECT\n empresa.\"cod_empresa\", empresa.\"nome\" AS empresa_nome,\n empresa.\"razao_social\" AS empresa_razao_social,\n empresa.\"cnpj\" AS empresa_cnpj,\n empresa.\"insc_estadual\" AS empresa_insc_estadual,\n empresa.\"telefone\" AS empresa_telefone,\n empresa.\"telefone_fax\" AS empresa_telefone_fax,\n empresa.\"email\" AS empresa_email,\n empresa.\"cod_empresa\" AS empresa_cod_empresa,\n estado.\"nome\" AS estado_nome,\n estado.\"uf\" AS estado_uf,\n cidade.\"nome\" AS cidade_nome,\n endereco.\"logradouro\" AS endereco_rua,\n endereco.\"cep\" AS endereco_cep,\n endereco.\"bairro\" AS endereco_bairro,\n endereco.\"complemento\" AS endereco_complemento\n FROM\n \"public\".\"endereco\" endereco INNER JOIN \"public\".\"empresa\" empresa ON endereco.\"cod_endereco\" = empresa.\"cod_endereco\"\n INNER JOIN \"public\".\"cidade\" cidade ON endereco.\"cod_cidade\" = cidade.\"cod_cidade\"\n INNER JOIN \"public\".\"estado\" estado ON cidade.\"cod_estado\" = estado.\"cod_estado\"";
       String condicao = "\n WHERE empresa.\"ativo\" = true";
       if (!codEmpresa.equals("0"))
           condicao = condicao + "\n AND empresa.\"cod_empresa\" = "+codEmpresa;
       return query + condicao + "\nORDER BY \n empresa.\"nome\"";
   }
   public String criaQueryEmpresaContato(String codEmpresa){
       String query = "SELECT\n empresa.\"cod_empresa\", empresa.\"nome\" AS empresa_nome,\n empresa.\"telefone\" AS empresa_telefone,\n empresa.\"telefone_fax\" AS empresa_telefone_fax,\n empresa.\"email\" AS empresa_email\n FROM\n\"public\".\"cidade\" cidade INNER JOIN \"public\".\"endereco\" endereco ON cidade.\"cod_cidade\" = endereco.\"cod_cidade\"\n INNER JOIN \"public\".\"empresa\" empresa ON endereco.\"cod_endereco\" = empresa.\"cod_endereco\"";
       String condicao = "\n WHERE empresa.\"ativo\" = true";
       if (!codEmpresa.equals("0"))
           condicao = condicao + "\n AND empresa.\"cod_empresa\" = "+codEmpresa;
       return query + condicao + "\nORDER BY \n empresa.\"nome\"";
   }
   public String criaQueryEmpresaEndereco(String codEmpresa){
       String query = "SELECT\n empresa.\"cod_empresa\", empresa.\"nome\" AS empresa_nome,\n endereco.\"logradouro\" AS endereco_logradouro,\n endereco.\"bairro\" AS endereco_bairro,\n endereco.\"cep\" AS endereco_cep,\n endereco.\"complemento\" AS endereco_complemento,\n estado.\"uf\" AS estado_uf,\n cidade.\"nome\" AS cidade_nome\n FROM\n \"public\".\"endereco\" endereco INNER JOIN \"public\".\"empresa\" empresa ON endereco.\"cod_endereco\" = empresa.\"cod_endereco\"\n INNER JOIN \"public\".\"cidade\" cidade ON endereco.\"cod_cidade\" = cidade.\"cod_cidade\"\n INNER JOIN \"public\".\"estado\" estado ON cidade.\"cod_estado\" = estado.\"cod_estado\"";
       String condicao = "\n WHERE empresa.\"ativo\" = true";
       if (!codEmpresa.equals("0"))
           condicao = condicao + "\n AND empresa.\"cod_empresa\" = "+codEmpresa;
       return query + condicao + "\nORDER BY \n empresa.\"nome\"";
   }
   public String criaQueryEmpresaInformacoes(String codEmpresa){
       String query = "SELECT\n empresa.\"cod_empresa\", empresa.\"nome\" AS empresa_nome,\n empresa.\"cnpj\" AS empresa_cnpj,\n empresa.\"insc_estadual\" AS empresa_insc_estadual,\n empresa.\"razao_social\" AS empresa_razao_social\n FROM\n \"public\".\"cidade\" cidade INNER JOIN \"public\".\"endereco\" endereco ON cidade.\"cod_cidade\" = endereco.\"cod_cidade\"\n INNER JOIN \"public\".\"empresa\" empresa ON endereco.\"cod_endereco\" = empresa.\"cod_endereco\"";
       String condicao = "\n WHERE empresa.\"ativo\" = true";
       if (!codEmpresa.equals("0"))
           condicao = condicao + "\n AND empresa.\"cod_empresa\" = "+codEmpresa;
       return query + condicao + "\nORDER BY \n empresa.\"nome\"";
   }
   //Motorista
   public String criaQueryMotorista(String codEmpresa, String codMotorista){
       String query = "SELECT\n motorista.\"nome\" AS motorista_nome,\n motorista.\"cnh\" AS motorista_cnh,\n motorista.\"telefone\" AS motorista_telefone,\n empresa.\"nome\" AS empresa_nome\n FROM\n \"public\".\"empresa\" empresa INNER JOIN \"public\".\"motorista\" motorista ON empresa.\"cod_empresa\" = motorista.\"cod_empresa\"";
       String condicao = "\n WHERE motorista.\"ativo\" = true";
       if (!codEmpresa.equals("0"))
           condicao = condicao + "\n AND motorista.\"cod_empresa\" = " + codEmpresa;
       if (!codMotorista.equals("0"))
           condicao = condicao + "\n AND motorista.\"cod_motorista\" =" + codMotorista;
       return query + condicao + "\nORDER BY \n motorista.\"nome\"";
   }
   //Nota
   public String criaQueryNota(String codNotaProdutor, String codNotaEmpresa, String numNota, String dataInicio, String dataFim, String cpf, String incra){
       String query = "SELECT\n notaprodutor.\"num_nota\" AS notaprodutor_num_nota,\n notaprodutor.\"incra\" AS notaprodutor_incra,\n notaprodutor.\"ano\" AS notaprodutor_ano,\n notaprodutor.\"nome_produtor\" AS notaprodutor_nome_produtor,\n notaprodutor.\"nome_empresa\" AS notaprodutor_nome_empresa,\n notaprodutor.\"data_nota\" AS notaprodutor_data_nota,\n notaprodutor.\"valor_nota\" AS notaprodutor_valor_nota,\n notaprodutor.\"cpf\" AS notaprodutor_cpf\n FROM\n \"public\".\"notaprodutor\" notaprodutor";
       String condicao = "\n WHERE notaprodutor.\"num_nota\" = notaprodutor.\"num_nota\"";
       if (!codNotaProdutor.equals("0"))
           condicao = condicao + "\n AND notaprodutor.\"nome_produtor\" = (SELECT nome_produtor FROM notaprodutor where cod_nota = " + codNotaProdutor+")";
       if (!codNotaEmpresa.equals("0"))
            condicao = condicao + "\n AND notaprodutor.\"nome_empresa\" = (SELECT nome_empresa FROM notaprodutor where cod_nota = " + codNotaEmpresa+")";
       if (!numNota.equals(""))
           condicao = condicao + "\n AND notaprodutor.\"num_nota\" = \'" + numNota+"\'";
       if (!dataInicio.equals(""))
           condicao = condicao + "\n AND notaprodutor.\"data_nota\" >= \'" + dataInicio + "\'" ;
       if (!dataFim.equals(""))
           condicao = condicao + "\n AND notaprodutor.\"data_nota\" <= \' " + dataFim + "\'";
       if (!cpf.equals(""))
           condicao = condicao + "\n AND notaprodutor.\"cpf\" = \'"+cpf+"\'";
       if (!incra.equals(""))
           condicao = condicao + "\n AND notaprodutor.\"incra\" = \'" +incra+"\'";
       return query + condicao + "\nORDER BY \n notaprodutor.\"nome_empresa\", notaprodutor.\"nome_produtor\"";
   }
   //Usuario
   public String criaQueryUsuario(String codUsuarioNome){
       String query = "SELECT\n usuario.\"nome\" AS usuario_nome,\n usuario.\"tipo\" AS usuario_tipo,\n usuario.\"login_usuario\" AS usuario_login_usuario\n FROM\n \"public\".\"usuario\" usuario";
       String condicao = "\n WHERE usuario.\"cod_usuario\" = usuario.\"cod_usuario\"";
       if (!codUsuarioNome.equals("0"))
           condicao = condicao + "\n AND usuario.\"nome\" = (SELECT nome FROM usuario where cod_usuario = "+codUsuarioNome+")";
       return query + condicao + "\nORDER BY \n usuario.\"nome\"";
    }
   //Previsao
   public String criaQueryPrevisaoAssociado(String codProduto, String codAssociado, String data){
       String query = "SELECT\n associado.\"nome\" AS associado_nome,\n associado.\"cpf\" AS associado_cpf,\n previsao.\"data_inicio\" AS previsao_data_inicio,\n previsao.\"data_fim\" AS previsao_data_fim,\n itemprevisao.\"quantidade\" AS itemprevisao_quantidade,\n classificacao.\"nome\" AS classificacao_nome,\n variedade.\"nome\" AS variedade_nome\nFROM\n \"public\".\"associado\" associado INNER JOIN \"public\".\"previsao\" previsao ON associado.\"cod_associado\" = previsao.\"cod_associado\"\n INNER JOIN \"public\".\"itemprevisao\" itemprevisao ON previsao.\"cod_previsao\" = itemprevisao.\"cod_previsao\"\n INNER JOIN \"public\".\"produto\" produto ON itemprevisao.\"cod_produto\" = produto.\"cod_produto\"\n INNER JOIN \"public\".\"variedade\" variedade ON produto.\"cod_variedade\" = variedade.\"cod_variedade\"\n INNER JOIN \"public\".\"classificacao\" classificacao ON produto.\"cod_classificacao\" = classificacao.\"cod_classificacao\"";
       String condicao = "";
       if (!codAssociado.equals("0"))
           condicao = condicao + "\n AND previsao.\"cod_associado\" = \'" + codAssociado + "\'";
       if (!codProduto.equals("0"))
           condicao = condicao + "\n AND itemprevisao.\"cod_produto\" = \'" + codProduto + "\'";
       if (!data.equals("")){
           condicao = condicao + "\n AND previsao.\"data_fim\" >= \'" + data + "\'";
           condicao = condicao + "\n AND previsao.\"data_inicio\" <= \'" + data + "\'";
       }
       return query + condicao + "\nORDER BY \n associado.\"nome\", variedade.\"nome\", classificacao.\"nome\"";
    }
   public String criaQueryPrevisaoItens(String codProduto,  String codAssociado, String data){
       String query = "SELECT Distinct \n  variedade.\"nome\" AS variedade_nome,\n classificacao.\"nome\" AS classificacao_nome,\n sum (itemprevisao.\"quantidade\") AS itemprevisao_quantidade\n FROM\n \"public\".\"associado\" associado INNER JOIN \"public\".\"previsao\" previsao ON associado.\"cod_associado\" = previsao.\"cod_associado\"\n INNER JOIN \"public\".\"itemprevisao\" itemprevisao ON previsao.\"cod_previsao\" = itemprevisao.\"cod_previsao\"\n INNER JOIN \"public\".\"produto\" produto ON itemprevisao.\"cod_produto\" = produto.\"cod_produto\"\n INNER JOIN \"public\".\"variedade\" variedade ON produto.\"cod_variedade\" = variedade.\"cod_variedade\"\n INNER JOIN \"public\".\"classificacao\" classificacao ON produto.\"cod_classificacao\" = classificacao.\"cod_classificacao\"";
       String condicao = "";
       if (!codAssociado.equals("0"))
           condicao = condicao + "\n AND previsao.\"cod_associado\" = \'" + codAssociado + "\'";
       if (!codProduto.equals("0"))
           condicao = condicao + "\n AND itemprevisao.\"cod_produto\" = \'" + codProduto + "\'";
       if (!data.equals("")){
           condicao = condicao + "\n AND previsao.\"data_fim\" >= \'" + data + "\'";
           condicao = condicao + "\n AND previsao.\"data_inicio\" <= \'" + data + "\'";
       }
       return query + condicao + "\nGroup by variedade.nome,classificacao.nome\nOrder by variedade.nome,classificacao.nome";
    }
   //Despesa
   public String criaQueryDespesa(String nome, String dataInicio, String dataFim){
       String query = "SELECT\n associado_consulta.nome as associado_nome,\n despesa.descricao as despesa_descricao,\n despesa.data_despesa as despesa_data,\n despesa.valor_total as despesa_valor_total,\n despesa.valor_atual as despesa_valor_atual,\n (select sum(d1.valor_total)FROM despesa as d1, associado as a1 WHERE d1.cod_associado = a1.cod_associado AND associado_consulta.cod_associado = a1.cod_associado) as despesa_valor_total_soma\n FROM associado as associado_consulta, despesa\n WHERE associado_consulta.cod_associado = despesa.cod_associado";
       String condicao = "";
       if (!nome.equals(""))
           condicao = condicao + "\n AND associado_consulta.\"nome\" like \'%" + nome + "%\'";
       if (!dataInicio.equals(""))
           condicao = condicao + "\n AND despesa.\"data_despesa\" >= \'" + dataInicio+ "\'";
       if (!dataFim.equals(""))
           condicao = condicao + "\n AND despesa.\"data_despesa\" <= \'" + dataFim + "\'";
       return query + condicao + "\nORDER BY \n associado_consulta.nome, despesa.\"descricao\"";
    }
   //Pedido
   public String criaQueryPedidoAssociado (String codAssociado, String codEmpresa, String codProduto, String dataInicio, String dataFim){
       String query = "SELECT\n associado.\"nome\" AS associado_nome,\n itempedidoempresa.\"peso_caixa\" AS pedidoempresa_peso_caixa,\n empresa.\"nome\" AS empresa_nome,\n pedidoempresa.\"data_entrega\" AS pedidoempresa_data_entrega,\n variedade.\"nome\" AS variedade_nome,\n classificacao.\"nome\" AS classificacao_nome,\n itempedidoassociado.\"quantidade\" AS itempedidoassociado_quantidade,\n itempedidoassociado.\"preco_unitario\" AS itempedidoempresa_valor_unitario,\n itempedidoassociado.\"preco_unitario\"*itempedidoassociado.\"quantidade\" AS itempedidoassociado_valor_total,\n pedidoempresa.\"valor_total\" AS pedidoassciado_valor_total\n FROM\n \"public\".\"pedidoempresa\" pedidoempresa INNER JOIN \"public\".\"itempedidoempresa\" itempedidoempresa ON pedidoempresa.\"cod_pedido_empresa\" = itempedidoempresa.\"cod_pedido_empresa\"\n INNER JOIN \"public\".\"itempedidoassociado\" itempedidoassociado ON itempedidoempresa.\"cod_item_pedido_empresa\" = itempedidoassociado.\"cod_item_pedido_empresa\"\n INNER JOIN \"public\".\"produto\" produto ON itempedidoempresa.\"cod_produto\" = produto.\"cod_produto\"\n INNER JOIN \"public\".\"itemprevisao\" itemprevisao ON produto.\"cod_produto\" = itemprevisao.\"cod_produto\"\n INNER JOIN \"public\".\"variedade\" variedade ON produto.\"cod_variedade\" = variedade.\"cod_variedade\"\n INNER JOIN \"public\".\"classificacao\" classificacao ON produto.\"cod_classificacao\" = classificacao.\"cod_classificacao\"\n AND itemprevisao.\"cod_item_previsao\" = itempedidoassociado.\"cod_item_previsao\"\n INNER JOIN \"public\".\"previsao\" previsao ON itemprevisao.\"cod_previsao\" = previsao.\"cod_previsao\"\n INNER JOIN \"public\".\"associado\" associado ON previsao.\"cod_associado\" = associado.\"cod_associado\"\n INNER JOIN \"public\".\"empresa\" empresa ON pedidoempresa.\"cod_empresa\" = empresa.\"cod_empresa\"\n";
       String condicao = "\n WHERE pedidoempresa.cod_pedido_empresa = pedidoempresa.cod_pedido_empresa ";
       if (!codAssociado.equals("0"))
           condicao = condicao + "\n AND previsao.\"cod_associado\" = " + codAssociado;
       if (!codEmpresa.equals("0"))
           condicao = condicao + "\n AND pedidoempresa.\"cod_empresa\" = " + codEmpresa;
       if (!codProduto.equals("0"))
           condicao = condicao + "\n AND itempedidoempresa.\"cod_produto\" = " + codProduto;
       if (!dataInicio.equals(""))
           condicao = condicao + "\n AND pedidoempresa.\"data_entrega\" >= \'" + dataInicio + "\'";
       if (!dataFim.equals(""))
           condicao = condicao + "\n AND pedidoempresa.\"data_entrega\" <= \'" + dataFim + "\'";
       return query + condicao;
    }
   public String criaQueryPedidoEmpresa(String codEmpresa, String codProduto, String dataInicio, String dataFim){
       String query = "SELECT\n empresa.\"nome\" AS empresa_nome,\n pedidoempresa.\"data_entrega\" AS pedidoempresa_data_entrega,\n classificacao.\"nome\" AS classificacao_nome,\n variedade.\"nome\" AS variedade_nome,\n itempedidoempresa.\"quantidade\" AS itempedidoempresa_quantidade,\n itempedidoempresa.\"preco_unitario\" AS itempedidoempresa_valor_unitario,\n itempedidoempresa.\"valor_total\" AS itempedidoempresa_valor_total,\n itempedidoempresa.\"peso_caixa\" AS pedidoempresa_peso_caixa,\n pedidoempresa.\"valor_total\" AS pedidoempresa_valor_total\n FROM\n \"public\".\"pedidoempresa\" pedidoempresa INNER JOIN \"public\".\"itempedidoempresa\" itempedidoempresa ON pedidoempresa.\"cod_pedido_empresa\" = itempedidoempresa.\"cod_pedido_empresa\"\n INNER JOIN \"public\".\"empresa\" empresa ON pedidoempresa.\"cod_empresa\" = empresa.\"cod_empresa\"\n INNER JOIN \"public\".\"produto\" produto ON itempedidoempresa.\"cod_produto\" = produto.\"cod_produto\"\n INNER JOIN \"public\".\"classificacao\" classificacao ON produto.\"cod_classificacao\" = classificacao.\"cod_classificacao\"\n INNER JOIN \"public\".\"variedade\" variedade ON produto.\"cod_variedade\" = variedade.\"cod_variedade\"";
       String condicao = "\n WHERE pedidoempresa.cod_pedido_empresa = pedidoempresa.cod_pedido_empresa ";
       if (!codEmpresa.equals("0"))
           condicao = condicao + "\n AND pedidoempresa.\"cod_empresa\" = " + codEmpresa;
       if (!codProduto.equals("0"))
           condicao = condicao + "\n AND itempedidoempresa.\"cod_produto\" = " + codProduto;
       if (!dataInicio.equals(""))
           condicao = condicao + "\n AND pedidoempresa.\"data_entrega\" >= \'" + dataInicio + "\'";
       if (!dataFim.equals(""))
           condicao = condicao + "\n AND pedidoempresa.\"data_entrega\" <= \'" + dataFim + "\'";
       return query + condicao + "\n ORDER BY empresa.nome, pedidoempresa.data_entrega";
    }
   public String criaQueryPedidoDetalhado(String codAssociado, String codEmpresa, String codProduto, String dataInicio, String dataFim){
       String query = "SELECT\n empresa.\"nome\" AS empresa_nome,\n associado.\"nome\" AS associado_nome,\n pedidoempresa.\"data_entrega\" AS pedidoempresa_data_entrega,\n itempedidoempresa.\"peso_caixa\" AS pedidoempresa_peso_caixa,\n variedade.\"nome\" AS variedade_nome,\n classificacao.\"nome\" AS classificacao_nome,\n itempedidoassociado.\"quantidade\" AS itempedidoassociado_quantidade,\n itempedidoempresa.\"preco_unitario\" AS itempedidoempresa_valor_unitario\n FROM\n \"public\".\"pedidoempresa\" pedidoempresa INNER JOIN \"public\".\"itempedidoempresa\" itempedidoempresa ON pedidoempresa.\"cod_pedido_empresa\" = itempedidoempresa.\"cod_pedido_empresa\"\n INNER JOIN \"public\".\"itempedidoassociado\" itempedidoassociado ON itempedidoempresa.\"cod_item_pedido_empresa\" = itempedidoassociado.\"cod_item_pedido_empresa\"\n INNER JOIN \"public\".\"produto\" produto ON itempedidoempresa.\"cod_produto\" = produto.\"cod_produto\"\n INNER JOIN \"public\".\"itemprevisao\" itemprevisao ON produto.\"cod_produto\" = itemprevisao.\"cod_produto\"\n INNER JOIN \"public\".\"variedade\" variedade ON produto.\"cod_variedade\" = variedade.\"cod_variedade\"\n INNER JOIN \"public\".\"classificacao\" classificacao ON produto.\"cod_classificacao\" = classificacao.\"cod_classificacao\"\n AND itemprevisao.\"cod_item_previsao\" = itempedidoassociado.\"cod_item_previsao\"\n INNER JOIN \"public\".\"previsao\" previsao ON itemprevisao.\"cod_previsao\" = previsao.\"cod_previsao\"\n INNER JOIN \"public\".\"associado\" associado ON previsao.\"cod_associado\" = associado.\"cod_associado\"\n INNER JOIN \"public\".\"empresa\" empresa ON pedidoempresa.\"cod_empresa\" = empresa.\"cod_empresa\"";
       String condicao = "WHERE pedidoempresa.cod_pedido_empresa = pedidoempresa.cod_pedido_empresa";
       if (!codAssociado.equals("0"))
           condicao = condicao + "\n AND previsao.\"cod_associado\" = " + codAssociado;
       if (!codEmpresa.equals("0"))
           condicao = condicao + "\n AND pedidoempresa.\"cod_empresa\" = " + codEmpresa;
       if (!codProduto.equals("0"))
           condicao = condicao + "\n AND itempedidoempresa.\"cod_produto\" = " + codProduto;
       if (!dataInicio.equals(""))
           condicao = condicao + "\n AND pedidoempresa.\"data_entrega\" >= \'" + dataInicio + "\'";
       if (!dataFim.equals(""))
           condicao = condicao + "\n AND pedidoempresa.\"data_entrega\" <= \'" + dataFim + "\'";
       return query + condicao + "\n ORDER BY empresa.nome, associado.nome, pedidoempresa.data_entrega";
    }
   //Venda
   public String criaQueryVendaAssociado(String codProduto, String codAssociado, String codEmpresa, String dataInicio, String dataFim){
       String query = "SELECT\n empresa.\"nome\" AS empresa_nome,\n associado.\"nome\" AS associaSdo_nome,\n associado.\"num_associado\" AS associado_num,\n venda.\"data_venda\" AS pedidoempresa_data_entrega,\n variedade.\"nome\" AS variedade_nome,\n classificacao.\"nome\" AS classificacao_nome,\n venda.\"peso_caixa\" AS pedidoempresa_peso_caixa,\n venda.\"quantidade\" AS venda_quant,\n venda.\"valor_venda\" AS venda_valor_associado,\n venda.\"comissao_total\" AS venda_comissao_total,\n venda.\"valor_venda_total\" AS venda_valor_total\n FROM\n \"public\".\"variedade\" variedade INNER JOIN \"public\".\"produto\" produto ON variedade.\"cod_variedade\" = produto.\"cod_variedade\"\n INNER JOIN \"public\".\"itemprevisao\" itemprevisao ON produto.\"cod_produto\" = itemprevisao.\"cod_produto\"\n INNER JOIN \"public\".\"itempedidoempresa\" itempedidoempresa ON produto.\"cod_produto\" = itempedidoempresa.\"cod_produto\"\n INNER JOIN \"public\".\"classificacao\" classificacao ON produto.\"cod_classificacao\" = classificacao.\"cod_classificacao\"\n INNER JOIN \"public\".\"pedidoempresa\" pedidoempresa ON itempedidoempresa.\"cod_pedido_empresa\" = pedidoempresa.\"cod_pedido_empresa\"\n INNER JOIN \"public\".\"itempedidoassociado\" itempedidoassociado ON itempedidoempresa.\"cod_item_pedido_empresa\" = itempedidoassociado.\"cod_item_pedido_empresa\"\n AND itemprevisao.\"cod_item_previsao\" = itempedidoassociado.\"cod_item_previsao\"\n INNER JOIN \"public\".\"venda\" venda ON itempedidoassociado.\"cod_item_pedido_associado\" = venda.\"cod_venda\"\n INNER JOIN \"public\".\"previsao\" previsao ON itemprevisao.\"cod_previsao\" = previsao.\"cod_previsao\"\n INNER JOIN \"public\".\"associado\" associado ON previsao.\"cod_associado\" = associado.\"cod_associado\"\n INNER JOIN \"public\".\"empresa\" empresa ON pedidoempresa.\"cod_empresa\" = empresa.\"cod_empresa\"";
       String condicao = "\n WHERE empresa.cod_empresa = empresa.cod_empresa\n";
       if (!codAssociado.equals("0"))
           condicao = condicao + "\n AND previsao.\"cod_associado\" = " + codAssociado;
       if (!codEmpresa.equals("0"))
           condicao = condicao + "\n AND pedidoempresa.\"cod_empresa\" = " + codEmpresa;
       if (!codProduto.equals("0"))
           condicao = condicao + "\n AND itemprevisao.\"cod_produto\" = " + codProduto;
       if (!dataInicio.equals(""))
           condicao = condicao + "\n AND venda.\"data_venda\" >= \'" + dataInicio + "\'";
       if (!dataFim.equals(""))
           condicao = condicao + "\n AND venda.\"data_venda\" <= \'" + dataFim + "\'";
       return query + condicao + "\n ORDER BY empresa.nome, associado.nome, venda.data_venda, variedade.nome, classificacao.nome";
    }
   public String criaQueryVendaEmpresa(String codProduto, String codAssociado, String codEmpresa, String dataInicio, String dataFim){
       String query = "SELECT \n empresa.\"nome\" AS empresa_nome,\n associado.num_associado AS associado_num,\n venda.\"data_venda\" AS pedidoempresa_data_entrega,\n associado.\"nome\" AS associado_nome,\n classificacao.\"nome\" AS classificacao_nome,\n variedade.\"nome\" AS variedade_nome,\n venda.\"quantidade\" AS venda_quant,\n venda.\"peso_caixa\" AS venda_peso_caixa,\n venda.\"comissao\" AS valor_comissao,\n venda.\"valor_venda\" AS valor_venda,\n venda.\"valor_venda_total\" AS  velor_venda_total\n FROM\n \"public\".\"itempedidoassociado\" itempedidoassociado INNER JOIN \"public\".\"venda\" venda ON itempedidoassociado.\"cod_item_pedido_associado\" = venda.\"cod_venda\"\n INNER JOIN \"public\".\"itempedidoempresa\" itempedidoempresa ON itempedidoassociado.\"cod_item_pedido_empresa\" = itempedidoempresa.\"cod_item_pedido_empresa\"\n INNER JOIN \"public\".\"itemprevisao\" itemprevisao ON itempedidoassociado.\"cod_item_previsao\" = itemprevisao.\"cod_item_previsao\"\n INNER JOIN \"public\".\"previsao\" previsao ON itemprevisao.\"cod_previsao\" = previsao.\"cod_previsao\"\n INNER JOIN \"public\".\"produto\" produto ON itemprevisao.\"cod_produto\" = produto.\"cod_produto\"\n AND produto.\"cod_produto\" = itempedidoempresa.\"cod_produto\"\n INNER JOIN \"public\".\"variedade\" variedade ON produto.\"cod_variedade\" = variedade.\"cod_variedade\"\n INNER JOIN \"public\".\"classificacao\" classificacao ON produto.\"cod_classificacao\" = classificacao.\"cod_classificacao\"\n INNER JOIN \"public\".\"pedidoempresa\" pedidoempresa ON itempedidoempresa.\"cod_pedido_empresa\" = pedidoempresa.\"cod_pedido_empresa\"\n INNER JOIN \"public\".\"empresa\" empresa ON pedidoempresa.\"cod_empresa\" = empresa.\"cod_empresa\"\n INNER JOIN \"public\".\"associado\" associado ON previsao.\"cod_associado\" = associado.\"cod_associado\"";
       String condicao = "\n WHERE  pedidoempresa.cod_empresa = pedidoempresa.cod_empresa";
       if (!codAssociado.equals("0"))
           condicao = condicao + "\n AND previsao" +
                   ".\"cod_associado\" = " + codAssociado;
       if (!codProduto.equals("0"))
           condicao = condicao + "\n AND itemprevisao.\"cod_produto\" = " + codProduto;
       if (!codEmpresa.equals("0"))
           condicao = condicao + "\n AND pedidoempresa.\"cod_empresa\" = " + codEmpresa;
       if (!dataInicio.equals(""))
           condicao = condicao + "\n AND venda.\"data_venda\" >= \'" + dataInicio + "\'";
       if (!dataFim.equals(""))
           condicao = condicao + "\n AND venda.\"data_venda\" <= \'" + dataFim + "\'";
       return query + condicao + "\n ORDER BY empresa.nome, associado.nome, venda.data_venda, variedade.nome, classificacao.nome";
   }
   public String criaQueryVendaAssociacao(String codProduto, String codAssociado, String codEmpresa, String dataInicio, String dataFim){
       String query = "SELECT\n empresa.\"nome\" AS empresa_nome,\n associado.\"num_associado\" AS associado_num,\n associado.\"nome\" AS associado_nome,\n venda.\"data_venda\" AS pedidoempresa_data_entrega,\n venda.\"peso_caixa\" AS pedidoempresa_peso_caixa,\n variedade.\"nome\" AS variedade_nome,\n classificacao.\"nome\" AS classificacao_nome,\n itempedidoassociado.\"quantidade\" AS itempedassocido_quant,\n (itempedidoassociado.\"quantidade\"*itempedidoassociado.\"preco_unitario\") AS itempedassocid_valor_total,\n itempedidoassociado.\"preco_unitario\" AS itempedempresa_valorunitario,";
       String subConsulta = "\n (select sum (venda.\"quantidade\"/venda.peso_caixa)\n FROM\n \"public\".\"variedade\" variedade INNER JOIN \"public\".\"produto\" produto ON variedade.\"cod_variedade\" = produto.\"cod_variedade\"\n INNER JOIN \"public\".\"itemprevisao\" itemprevisao ON produto.\"cod_produto\" = itemprevisao.\"cod_produto\"\n INNER JOIN \"public\".\"itempedidoempresa\" itempedidoempresa ON produto.\"cod_produto\" = itempedidoempresa.\"cod_produto\"\n INNER JOIN \"public\".\"classificacao\" classificacao ON produto.\"cod_classificacao\" = classificacao.\"cod_classificacao\"\n INNER JOIN \"public\".\"pedidoempresa\" pedidoempresa ON itempedidoempresa.\"cod_pedido_empresa\" = pedidoempresa.\"cod_pedido_empresa\"\n INNER JOIN \"public\".\"itempedidoassociado\" itempedidoassociado ON itempedidoempresa.\"cod_item_pedido_empresa\" = itempedidoassociado.\"cod_item_pedido_empresa\"\n AND itemprevisao.\"cod_item_previsao\" = itempedidoassociado.\"cod_item_previsao\"\n INNER JOIN \"public\".\"venda\" venda ON itempedidoassociado.\"cod_item_pedido_associado\" = venda.\"cod_venda\"\n INNER JOIN \"public\".\"previsao\" previsao ON itemprevisao.\"cod_previsao\" = previsao.\"cod_previsao\"\n INNER JOIN \"public\".\"associado\" associado ON previsao.\"cod_associado\" = associado.\"cod_associado\"\n INNER JOIN \"public\".\"empresa\" empresa ON pedidoempresa.\"cod_empresa\" = empresa.\"cod_empresa\"";
       subConsulta = subConsulta + "\n WHERE previsao.cod_previsao = previsao.cod_previsao";
       if (!codAssociado.equals("0"))
           subConsulta = subConsulta + "\n AND previsao.\"cod_associado\" = " + codAssociado;
       if (!codEmpresa.equals("0"))
           subConsulta = subConsulta + "\n AND pedidoempresa.\"cod_empresa\" = " + codEmpresa;
       if (!codProduto.equals("0"))
           subConsulta = subConsulta + "\n AND itemprevisao.\"cod_produto\" = " + codProduto;
       if (!dataInicio.equals(""))
           subConsulta = subConsulta + "\n AND venda.\"data_venda\" >= \'" + dataInicio + "\'";
       if (!dataFim.equals(""))
            subConsulta = subConsulta + "\n AND venda.\"data_venda\" <= \'" + dataFim + "\'";
       if (!codProduto.equals(""))
           subConsulta = subConsulta + "\n AND itempedidoempresa.\"cod_produto\" = " + codProduto;
       subConsulta = subConsulta + ") as total_caixas\n";
       query = query + subConsulta + "\n  FROM\n \"public\".\"variedade\" variedade INNER JOIN \"public\".\"produto\" produto ON variedade.\"cod_variedade\" = produto.\"cod_variedade\"\n INNER JOIN \"public\".\"itemprevisao\" itemprevisao ON produto.\"cod_produto\" = itemprevisao.\"cod_produto\"\n INNER JOIN \"public\".\"itempedidoempresa\" itempedidoempresa ON produto.\"cod_produto\" = itempedidoempresa.\"cod_produto\"\n INNER JOIN \"public\".\"classificacao\" classificacao ON produto.\"cod_classificacao\" = classificacao.\"cod_classificacao\"\n INNER JOIN \"public\".\"pedidoempresa\" pedidoempresa ON itempedidoempresa.\"cod_pedido_empresa\" = pedidoempresa.\"cod_pedido_empresa\"\n INNER JOIN \"public\".\"itempedidoassociado\" itempedidoassociado ON itempedidoempresa.\"cod_item_pedido_empresa\" = itempedidoassociado.\"cod_item_pedido_empresa\"\n AND itemprevisao.\"cod_item_previsao\" = itempedidoassociado.\"cod_item_previsao\"\n INNER JOIN \"public\".\"venda\" venda ON itempedidoassociado.\"cod_item_pedido_associado\" = venda.\"cod_venda\"\n INNER JOIN \"public\".\"previsao\" previsao ON itemprevisao.\"cod_previsao\" = previsao.\"cod_previsao\"\n INNER JOIN \"public\".\"associado\" associado ON previsao.\"cod_associado\" = associado.\"cod_associado\"\n INNER JOIN \"public\".\"empresa\" empresa ON pedidoempresa.\"cod_empresa\" = empresa.\"cod_empresa\"";
       String condicao = "";
       if (!codAssociado.equals("0"))
           condicao = condicao + "\n AND previsao.\"cod_associado\" = " + codAssociado;
       if (!codProduto.equals("0"))
           condicao = condicao + "\n AND itemprevisao.\"cod_produto\" = " + codProduto;
       if (!codEmpresa.equals("0"))
           condicao = condicao + "\n AND pedidoempresa.\"cod_empresa\" = " + codEmpresa;
       if (!dataInicio.equals(""))
           condicao = condicao + "\n AND venda.\"data_venda\" >= \'" + dataInicio + "\'";
       if (!dataFim.equals(""))
           condicao = condicao + "\n AND venda.\"data_venda\" <= \'" + dataFim + "\'";
       return query + condicao + "\n GROUP BY empresa.\"nome\", associado.\"num_associado\", associado.\"nome\", venda.\"data_venda\", venda.peso_caixa, variedade.nome, classificacao.\"nome\", itempedidoassociado.\"quantidade\", itempedidoassociado.\"preco_unitario\"";
   }

   public String criaQueryVendaBancoAssociacao(String codProduto, String codAssociado, String codEmpresa, String dataInicio, String dataFim){
       String query = "SELECT\n empresa.\"nome\" AS empresa_nome,\n venda.\"data_venda\" AS venda_data_venda,\n associado.\"nome\" AS associado_nome,\n variedade.\"nome\" AS variedade_nome,\n classificacao.\"nome\" AS classificacao_nome,\n venda.\"comissao_total\" AS venda_comissao_total,\n venda.\"quantidade\" AS venda_quantidade\n FROM\n  empresa, venda, associado, variedade, classificacao, pedidoempresa, itempedidoempresa, itempedidoassociado, previsao, itemprevisao, produto\n WHERE\n venda.cod_venda = itempedidoassociado.cod_item_pedido_associado AND itempedidoassociado.cod_item_pedido_empresa = itempedidoempresa.cod_item_pedido_empresa AND itempedidoempresa.cod_pedido_empresa = pedidoempresa.cod_pedido_empresa\n AND pedidoempresa.cod_empresa = empresa.cod_empresa AND itempedidoempresa.cod_produto = produto.cod_produto AND itempedidoassociado.cod_item_previsao = itemprevisao.cod_item_previsao AND itemprevisao.cod_previsao = previsao.cod_previsao\n AND previsao.cod_associado = associado.cod_associado AND itemprevisao.cod_produto = produto.cod_produto AND produto.cod_variedade = variedade.cod_variedade AND produto.cod_classificacao = classificacao.cod_classificacao";
       String condicao = "";
       if (!codAssociado.equals("0"))
           condicao = condicao + "\n AND previsao.\"cod_associado\" = " + codAssociado;
       if (!codProduto.equals("0"))
           condicao = condicao + "\n AND itemprevisao.\"cod_produto\" = " + codProduto;
       if (!codEmpresa.equals("0"))
           condicao = condicao + "\n AND pedidoempresa.\"cod_empresa\" = " + codEmpresa;
       if (!dataInicio.equals(""))
           condicao = condicao + "\n AND venda.\"data_venda\" >= \'" + dataInicio + "\'";
       if (!dataFim.equals(""))
           condicao = condicao + "\n AND venda.\"data_venda\" <= \'" + dataFim + "\'";
       return query + condicao + "\n ORDER BY empresa.nome, associado.nome, variedade.nome, classificacao.nome";
    }
   public String criaQueryVendaBancoAssociado(String codProduto, String codAssociado, String codEmpresa, String dataInicio, String dataFim){
       String query = "SELECT\n associado.\"nome\" AS associado_nome,\n associado.\"cpf\" AS associado_cpf,\n associado.\"agencia\" AS associado_agencia,\n associado.\"conta\" AS associado_conta,\n associado.\"tipo_conta\" AS associado_tipo_conta,\n banco.\"nome\" AS banco_nome,\n venda.\"valor_venda\" AS itempedidoassociado_valor_total,\n variedade.\"nome\" AS variedade_nome,\n classificacao.\"nome\" AS classificacao_nome,\n venda.\"quantidade\" AS venda_quantidade,\n venda.data_venda AS venda_data_venda,\n empresa.nome AS empresa_nome\n FROM\n \"public\".\"variedade\" variedade INNER JOIN \"public\".\"produto\" produto ON variedade.\"cod_variedade\" = produto.\"cod_variedade\"\n INNER JOIN \"public\".\"itemprevisao\" itemprevisao ON produto.\"cod_produto\" = itemprevisao.\"cod_produto\"\n INNER JOIN \"public\".\"itempedidoempresa\" itempedidoempresa ON produto.\"cod_produto\" = itempedidoempresa.\"cod_produto\"\n INNER JOIN \"public\".\"classificacao\" classificacao ON produto.\"cod_classificacao\" = classificacao.\"cod_classificacao\"\n INNER JOIN \"public\".\"pedidoempresa\" pedidoempresa ON itempedidoempresa.\"cod_pedido_empresa\" = pedidoempresa.\"cod_pedido_empresa\"\n INNER JOIN \"public\".\"itempedidoassociado\" itempedidoassociado ON itempedidoempresa.\"cod_item_pedido_empresa\" = itempedidoassociado.\"cod_item_pedido_empresa\"\n AND itemprevisao.\"cod_item_previsao\" = itempedidoassociado.\"cod_item_previsao\"\n INNER JOIN \"public\".\"venda\" venda ON itempedidoassociado.\"cod_item_pedido_associado\" = venda.\"cod_venda\"\n INNER JOIN \"public\".\"venda\" venda_A ON itempedidoassociado.\"cod_item_pedido_associado\" = venda_A.\"cod_venda\"\n INNER JOIN \"public\".\"previsao\" previsao ON itemprevisao.\"cod_previsao\" = previsao.\"cod_previsao\"\n INNER JOIN \"public\".\"associado\" associado ON previsao.\"cod_associado\" = associado.\"cod_associado\"\n INNER JOIN \"public\".\"banco\" banco ON associado.\"cod_banco\" = banco.\"cod_banco\"\n INNER JOIN \"public\".\"empresa\" empresa ON pedidoempresa.\"cod_empresa\" = empresa.\"cod_empresa\"";
       String condicao = "\n WHERE associado.cod_associado = associado.cod_associado";
       if (!codAssociado.equals("0"))
           condicao = condicao + "\n AND previsao.\"cod_associado\" = " + codAssociado;
       if (!codEmpresa.equals("0"))
           condicao = condicao + "\n AND pedidoempresa.\"cod_empresa\" = " + codEmpresa;
       if (!codProduto.equals("0"))
           condicao = condicao + "\n AND itemprevisao.\"cod_produto\" = " + codProduto;
       if (!dataInicio.equals(""))
           condicao = condicao + "\n AND venda.\"data_venda\" >= \'" + dataInicio + "\'";
       if (!dataFim.equals(""))
           condicao = condicao + "\n AND venda.\"data_venda\" <= \'" + dataFim + "\'";
       return query + condicao + "\n ORDER BY associado.nome, venda.data_venda, empresa.nome";
   }
   public String criaQueryVendaItens(String codProduto, String codAssociado, String codEmpresa, String dataInicio, String dataFim){
       String query = "SELECT\n classificacao.\"nome\" AS classificacao_nome,\n variedade.\"nome\" AS variedade_nome,\n sum(venda_A.\"quantidade\") AS itempedidoassociado_quantidade\n FROM\n \"public\".\"itempedidoempresa\" itempedidoempresa INNER JOIN \"public\".\"itempedidoassociado\" itempedidoassociado ON itempedidoempresa.\"cod_item_pedido_empresa\" = itempedidoassociado.\"cod_item_pedido_empresa\"\n INNER JOIN \"public\".\"itemprevisao\" itemprevisao ON itempedidoassociado.\"cod_item_previsao\" = itemprevisao.\"cod_item_previsao\"\n INNER JOIN \"public\".\"venda\" venda ON itempedidoassociado.\"cod_item_pedido_associado\" = venda.\"cod_venda\"\n INNER JOIN \"public\".\"venda\" venda_A ON itempedidoassociado.\"cod_item_pedido_associado\" = venda_A.\"cod_venda\"\n INNER JOIN \"public\".\"itempedidoassociado\" itempedidoassociado_A ON venda.\"cod_venda\" = itempedidoassociado_A.\"cod_item_pedido_associado\"\n AND itemprevisao.\"cod_item_previsao\" = itempedidoassociado_A.\"cod_item_previsao\"\n AND itempedidoempresa.\"cod_item_pedido_empresa\" = itempedidoassociado_A.\"cod_item_pedido_empresa\"\n INNER JOIN \"public\".\"produto\" produto ON itempedidoempresa.\"cod_produto\" = produto.\"cod_produto\"\n INNER JOIN \"public\".\"pedidoempresa\" pedidoempresa ON itempedidoempresa.\"cod_pedido_empresa\" = pedidoempresa.\"cod_pedido_empresa\"\n INNER JOIN \"public\".\"empresa\" empresa ON pedidoempresa.\"cod_empresa\" = empresa.\"cod_empresa\"\n AND produto.\"cod_produto\" = itemprevisao.\"cod_produto\"\n INNER JOIN \"public\".\"variedade\" variedade ON produto.\"cod_variedade\" = variedade.\"cod_variedade\"\n INNER JOIN \"public\".\"classificacao\" classificacao ON produto.\"cod_classificacao\" = classificacao.\"cod_classificacao\"\n INNER JOIN \"public\".\"previsao\" previsao ON itemprevisao.\"cod_previsao\" = previsao.\"cod_previsao\"\n INNER JOIN \"public\".\"associado\" associado ON previsao.\"cod_associado\" = associado.\"cod_associado\"";
       String condicao = "\n WHERE produto.cod_produto = produto.cod_produto";
       if ((!codAssociado.equals(""))||(!codEmpresa.equals(""))||(!dataInicio.equals(""))||(!dataFim.equals(""))){
           condicao = condicao +  "\n AND pedidoempresa.cod_pedido_empresa = itempedidoempresa.cod_pedido_empresa";
           if (!codAssociado.equals("0"))
                condicao = condicao + "\n AND previsao.\"cod_associado\" = " + codAssociado;
           if (!codProduto.equals("0"))
                condicao = condicao + "\n AND itemprevisao.\"cod_produto\" = " + codProduto;
            if (!codEmpresa.equals("0"))
                condicao = condicao + "\n AND pedidoempresa.\"cod_empresa\" = " + codEmpresa;
             if (!dataInicio.equals(""))
                condicao = condicao + "\n AND venda.\"data_venda\" >= \'" + dataInicio + "\'";
             if (!dataFim.equals(""))
                condicao = condicao + "\n AND venda.\"data_venda\" <= \'" + dataFim + "\'";
       }
       return query + condicao + " GROUP BY variedade.nome, classificacao.nome";
    }
    public String criaQueryEntrega(String codAssociado, String codEmpresa, String dataInicio, String dataFim){
       String query = "SELECT\n empresa.\"nome\" AS empresa_nome,\n associado.\"nome\" AS associado_nome,\n associado.\"num_associado\" AS associado_num_associado,\n variedade.\"nome\" AS variedade_nome,\n classificacao.\"nome\" AS classificacao_nome,\n itempedidoassociado.\"quantidade\" AS itempedidoassociado_quantidade,\n itempedidoempresa.\"preco_unitario\" AS itempedidoempresa_valor_unitario,\n pedidoempresa.\"peso_caixa\" AS pedidoempresa_peso_caixa,\n sum(itempedidoempresa.quantidade/pedidoempresa.\"peso_caixa\") AS pedido_quantidade_total\n FROM\n \"public\".\"itempedidoempresa\" itempedidoempresa INNER JOIN \"public\".\"itempedidoassociado\" itempedidoassociado ON itempedidoempresa.\"cod_item_pedido_empresa\" = itempedidoassociado.\"cod_item_pedido_empresa\"\n INNER JOIN \"public\".\"pedidoempresa\" pedidoempresa ON itempedidoempresa.\"cod_pedido_empresa\" = pedidoempresa.\"cod_pedido_empresa\"\n INNER JOIN \"public\".\"produto\" produto ON itempedidoempresa.\"cod_produto\" = produto.\"cod_produto\"\n INNER JOIN \"public\".\"variedade\" variedade ON produto.\"cod_variedade\" = variedade.\"cod_variedade\"\n INNER JOIN \"public\".\"classificacao\" classificacao ON produto.\"cod_classificacao\" = classificacao.\"cod_classificacao\"\n INNER JOIN \"public\".\"empresa\" empresa ON pedidoempresa.\"cod_empresa\" = empresa.\"cod_empresa\"\n INNER JOIN \"public\".\"associado\" associado ON itempedidoassociado.\"cod_associado\" = associado.\"cod_associado\"";
       String condicao = "\n WHERE associado.cod_associado = associado.cod_associado";
       if (!codAssociado.equals("0"))
           condicao = condicao + "\n AND itempedidoassociado.\"cod_associado\" = " + codAssociado;
       if (!codEmpresa.equals("0"))
           condicao = condicao + "\n AND pedidoempresa.\"cod_empresa\" = " + codEmpresa;
       if (!dataInicio.equals(""))
           condicao = condicao + "\n AND pedidoempresa.\"data_entrega\" >= \'" + dataInicio + "\'";
       if (!dataFim.equals(""))
           condicao = condicao + "\n AND pedidoempresa.\"data_entrega\" <= \'" + dataFim + "\'";
       return query + condicao + "\n GROUP BY empresa.nome, associado.nome, associado.num_associado, variedade.nome, classificacao.nome, pedidoempresa.peso_caixa, itempedidoassociado.quantidade, itempedidoempresa.preco_unitario \n ORDER BY variedade.nome, classificacao.nome";
    }
    public String criaQueryContaReceberAssociado(String codAssociado, String dataInicio, String dataFim, int pg){
       String query = "SELECT\n associado.\"nome\" AS associado_nome,\n associado.\"num_associado\" AS associado_num_associado,\n contareceberassociado.\"descricao\" AS contareceberassociado_descricao,\n contareceberassociado.\"data_despesa\" AS contareceberassociado_data_despesa,\n contareceberassociado.\"valor_total\" AS contareceberassociado_valor_total,\n contareceberassociado.\"valor_pago\" AS contareceberassociado_valor_pago\n FROM\n \"public\".\"associado\" associado INNER JOIN \"public\".\"contareceberassociado\" contareceberassociado ON associado.\"cod_associado\" = contareceberassociado.\"cod_associado\"";
       String condicao = "\nWHERE associado.cod_associado = associado.cod_associado";
       if (!codAssociado.equals("0"))
           condicao = condicao + "\n AND contareceberassociado.\"cod_associado\" = " + codAssociado;
       if (!dataInicio.equals(""))
           condicao = condicao + "\n AND contareceberassociado.\"data_despesa\" >= \'" + dataInicio + "\'";
       if (!dataFim.equals(""))
           condicao = condicao + "\n AND contareceberassociado.\"data_despesa\" <= \'" + dataFim + "\'";
       if (pg == 1) //So despesas que ja foram pagas
           condicao = condicao + "\n AND contareceberassociado.\"valor_total\" > contareceberassociado.\"valor_pago\"";
       if (pg == 2) //So despesas que ja não pagas
           condicao = condicao + "\n AND contareceberassociado.\"valor_total\" = contareceberassociado.\"valor_pago\"";
       return query + condicao + "\nORDER BY associado.nome, contareceberassociado.data_despesa";
    }
}